// 重新定义导航元素 覆盖bootstrap框架自带的样式
.navbar{
  // 让导航浮在最顶层
  position: sticky;
  left:0;
  top:0;
  // 层级深度
  z-index:10;

  border-radius: 0px;
  border:0px;
  background:#111111;
  overflow: hidden;
  padding: .8em 0em;
  margin-bottom:0px;

  // 修改logo
  .navbar-brand{
    text-transform: uppercase;
    font-family: OSBold;
  }

  // 导航元素修改
  .nav{
    margin: 0px;
    overflow: hidden;
  }

  .nav a{
    text-transform: uppercase;
    font-family: OSBold;
    border-bottom:5px solid transparent;

    // 过渡效果
    transition: all .3s linear;

    // & == a 元素自己本身  hover 悬停的意思
    &:hover{
      border-bottom:5px solid #fcac45;
      transform:scale(1.1);
    }
  }

  // css媒体查询
  // 折叠导航 770px 
  @media screen and (max-width:770px){
    .nav a{
      text-align: center;
    }
  }

}
// 让页面滚动时有平滑的过渡效果
html{
  scroll-behavior: smooth;
}
// banner
.banner{
  background:#111;
  color:#d5d5d5;
  text-align: center;
  padding:16em 0em 6em;
  overflow: hidden;

  .title{
    font-family: OSBold;
    text-transform: uppercase;
    font-size:3em;

    span{
      color:#fcac45;
    }
  }

  .subtitle{
    font-family: OSLight;
    font-size:1.5em;
    letter-spacing: 1px;
    margin-bottom:15em;

    span{
      font-family: OSBold;
    }
  }

  .more{
    width:4em;
    height:4em;
    line-height:3em;
    border:3px solid #d5d5d5;
    border-radius:100%;
    margin:0 auto;

    transition:all linear .3s;

    a{
      width:100%;
      height:100%;
      font-size:1.5em;
      font-weight: bold;
      color:#fff;
    }

    &:hover{
      transform:translateY(-10px);
      box-shadow: 0px 10px 10px 5px #d5d5d5;
    }
    
  }

  @media screen and (max-width:700px){
    .title{
      font-size: 2.2em;
    }

    .subtitle{
      font-size:1.5em;
    }
  }
}

// about
.about{
  padding:6em 0em;
  color:#797979;

  .container{
    display: flex;

    .left{
      flex-shrink: .5;
    }

    .right{
      width: 60%;

      .subject{
        margin-bottom: 2em;

        .small{
          font-family: OBLight;
          font-size: 1.5em;
        }

        .big{
          width: 95%;
          font-family: OSLight;
          font-size:2.5em;
          text-transform: uppercase;
          color:#000;

          // 强制文字只在一行显示
          white-space: nowrap;
          overflow: hidden;
          text-overflow: ellipsis;

          span:first-child{
            display: inline-block;
            padding-bottom:.3em;
            border-bottom:5px solid #fcac45;
          }

          span:last-child{
            font-family: OSBold;
          }
        }
      }

      .desc{
        color: #797979;
        font-size:1.2em;
        margin-bottom:2em;
      }

      .list{
        margin-bottom:2em;

        li{
          font-size:1.2em;
          margin-bottom: .3em;

          img{
          position: relative;
          top: -2px;
          margin-right: 5px;
          }

          span:first-child{
            margin-bottom: 2px;
            font-family: OSBold;
          }

          span:last-child{
            font-family: OSLtalic;
          }
        }
      }

      .more{
        display: flex;
        justify-content: center;
        align-items: center;
        align-content: center;
        width:20em;
        padding:1em 2em;
        border: 2px solid #797979;
        border-radius: 3px;
        cursor: pointer;
        transition:all linear .3s;

        img{
          position: relative;
          top:-1.5px;
          margin-right: 5px;
        }
        &:hover{
          transform:translateY(-10px);
          box-shadow: 0px 10px 10px 10px #737373;
        }

        span:first-child{
          top:-1px;
          margin-right:.5em;
        }

        span:last-child{
          text-transform: uppercase;
          font-weight: bold;
          font-size:1.2em;
        }
      }
    }
  }

  // 当屏幕缩小到1000px以下的时候
  @media screen and (max-width:1000px){
    .container{
      display: block;

      .left{
        display: none;
      }

      .right{
        width:100%;
      }
    }
  }

  @media screen and (max-width:500px){
    padding:3em 0em;

    .container{
      .right{
        .subject{
          .small{
            font-size:1.2em;
          }

          .big{
            font-size:2em;
          }
        }
      }
    }
  }
}

// team
.team{
  background:#111;
  padding:2em 0em;
  color: #fff;

  .title{
    color: #fff;
    text-align: center;
    font-family: OSLight;
    margin-top: 1.5em;
    margin-bottom: 2.5em;
    background: url('../images/title-background.png') no-repeat center bottom;
    font-size: 3em;
    letter-spacing: 1px;
    padding-bottom: 0.8em;
    span{
      font-family: OSBold;
    }
  }
  .list{
    display: flex;
    justify-content: space-between;

    .item{
      width: 23%;

      .cover{
        width: 40%;
        margin: 0 auto;
        border-radius: 100px;
        overflow: hidden;
        transition: all .3s linear;

        &:hover{
          box-shadow: 0px 10px 10px 5px #d5d5d5;
          transform: translateY(-10px);

        }
      }

      .box{
        text-align: center;
        p:first-child{
          font-family: OSBold;
          font-size: 1.2em;
          margin: 0.5em 0em;
        }
        p:nth-child(2){
          margin-top: -.8em;
          margin-bottom:2em;
        }
        p:nth-child(3){
          font-size: 1.1em;
        }
      }
    }
  }
  .options{
    width: 100%;
    text-align: center;
    margin-top: 6em;
    span{
      display: inline-block;
      width: .5em;
      height: .5em;
      background-color: #fff;
      cursor: pointer;
      transition: all .3s linear;
      margin-right: .3em;
      margin-left: .3em;
      margin-bottom: 4em;
      &:hover{
        background-color: #fcac45;
        transform: scale(1.2);
      }
    }
  }
  // 小于600像素时,改成垂直排列
  @media screen and (max-width:600px){

    &{
      padding: 6em 0em 5em;
    }
    .list{
      display: block;
      margin-bottom: 3em;
    
      .item{
        width: 100%;
        display: flex;
        margin-bottom: 2em;
      }
      .cover{
        border-radius: 0px;
        width: 50%;
        margin-right: 2%;
      }
      .options{
        text-align: center;
      }
    }
  }
}

// services
.services{
  .title{
    color: #000;
    text-align: center;
    font-family: OSLight;
    margin-top: 1.5em;
    margin-bottom: .8em;
    background: url('../images/title-background.png') no-repeat center bottom;
    font-size: 3em;
    letter-spacing: 1px;
    padding-bottom: 0.8em;
    
    span{
      font-family: OSBold;
    }
  }

  .desc{
    text-align: center;
    margin-top: 1em;
    font-size: 1em;
  }

  .list{
    display: flex;
    text-align: center;
    margin-top: 8em;
    
    .item{
       
      img{
        border: 4px solid #fcac45;
        border-radius: 100px;
        margin-bottom: 1em;
      }

      .illu{
        font-size: 1.5em;
        margin: 0 auto;
        margin-bottom: .5em;
        font-family: OSBold;
      }
      .text{
        font-size: 1em;
        margin-right: 1.5em;
        margin-left: 1.5em;
        margin-bottom: 5em;
      }
    }
  }

  @media screen and (max-width:600px){
    &{
      padding:6em 0em 3em;
    }

    .list{
      display: block;
      margin-bottom:3em;

      .item{
        width:100%;
        display: flex;
        margin-bottom:1em;

        img{
          border-radius: 100%;
          width:80%;
          margin: 0 auto;
        }

        .illu{
          font-size:1em;
          margin-left: 1em;
          margin-top: 1em;
        }

        .text{
          font-size:1em;
        }
      }

    }
    
  }
}

// clients
.clients{
  background-color: #000;
  .title{
    padding-top: 2em;
    color: #fff;
    text-align: center;
    font-family: OSLight;
    margin-top: 1.5em;
    margin-bottom: 3em;
    background: url('../images/title-background.png') no-repeat center bottom;
    font-size: 3em;
    letter-spacing: 1px;
    padding-bottom: 0.8em;

    span{
      font-family: OSBold;
    }
  }

  .list{
    display: flex;
    
    .item{
      text-align: center;
      margin: 0 auto;
      .cover{
      transition: all .3s linear;
        img{
          margin-bottom: 4em;
        } 

        &:hover{
          transform: scale(1.1);
          transform: translateY(-10px);
        }
      }
    }
  }

  .options{
    width: 100%;
    text-align: center;
    margin-top: 6em;

    span{
      display: inline-block;
      width: .5em;
      height: .5em;
      background-color: #fff;
      cursor: pointer;
      transition: all .3s linear;
      margin-right: .3em;
      margin-left: .3em;
      margin-bottom: 10em;
      &:hover{
        background-color: #fcac45;
        transform: scale(1.2);
      }
    }
  }
  @media screen and (max-width:1000px){
    &{
      
    }

    .list{
      display: block;
      margin-bottom:3em;

      .item{
        width:100%;
        display: flex;
        margin-bottom:1em;

        .cover{
          border-radius: 0px;
          width:50%;
          margin: 0 auto;
          margin-bottom: 1em;
        }
      }
    }
  }
}

// work
.work{
  .container{

    .title{
    padding-top: 1em;
    color: #000;
    text-align: center;
    font-family: OSLight;
    margin-top: 1.5em;
    margin-bottom: 0.8em;
    background: url('../images/title-background.png') no-repeat center bottom;
    font-size: 3em;
    letter-spacing: 1px;
    padding-bottom: 0.8em;

    span{
      font-family: OSBold;
    }
  }

    .desc{
    text-align: center;
    margin-top: 1em;
    font-size: 1.1em;
  }

    .elements{
      margin-top: 8em;
      display: flex;
      margin-bottom:1.5em;
      .left{
        font-family: OSBold;
        span{

        }
      }

      .right{
        margin-left: auto;
        cursor: pointer;
        .classify{
          span {
            cursor: pointer;
            transition: color 0.2s;
          }
          // 只给非.separator加hover和active色
          span:not(.separator):hover{
            color: #fcac45;
          }
          span:not(.separator).active {
            font-family: OSBold;
            
          }
          // 分隔符不变色
          .separator {
            color: #999;
            cursor: default;
            border: none;
          }
        }
      }
    }

    .list{
      display: flex;
      flex-wrap: wrap;
      padding-bottom: 7em;
      .cover{
        width: 23%;
        box-sizing: border-box;
        display: flex;
        justify-content: center;
        align-items: center;
        margin: 1%;

      }
    }
  }
}

// testimonials
.testimonials{
  background-color: #111;
  .title{

    color: #fff;
    text-align: center;
    font-family: OSLight;
    margin-top: 1.5em;
    margin-bottom: 2.5em;
    background: url('../images/title-background.png') no-repeat center bottom;
    font-size: 3em;
    letter-spacing: 1px;
    padding-bottom: 0.8em;
    padding-top: 2em;

    span{
      font-family: OSBold;
    }
  }

  .desc{
    text-align: center;
    margin-top: 4em;
    font-size: 1em;
    color: #d5d5d5;
    width: 70%;
    margin: 0 auto;
    margin-bottom: 4em;
  } 

  .comment{
    text-align: center;
    width: 30%;
    margin: 0 auto;
    color:#797979;

    span{
      font-family: OSBold;
      color: #a1a0a0;
    }

  }

  .options{
    width: 100%;
    text-align: center;
    margin-top: 4em;

    span{
      display: inline-block;
      width: .5em;
      height: .5em;
      background-color: #fff;
      cursor: pointer;
      transition: all .3s linear;
      margin-right: .3em;
      margin-left: .3em;
      margin-bottom: 5em;
      &:hover{
        background-color: #fcac45;
        transform: scale(1.2);
      }
    }
  }
}

// 联系我们
.contact{
  padding:6em 0em;

  // 标题
  .title{
    width:80%;
    margin:0 auto;
    font-size:3em;
    text-transform: uppercase;
    text-align: center;
    letter-spacing: 1px;
    background:url('../images/title-background.png') no-repeat center bottom;
    padding-bottom:.8em;
    margin-bottom:1em;
    font-family: OSLight;

    // 强制在一行显示
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;


    span{
      font-family: OSBold;
    }
  }

  // 段落
  .desc{
    width:85%;
    font-family: OSLight;
    font-size:1.2em;
    margin:0 auto;
    text-align: center;
    margin-bottom:6em;
  }

  // 表单
  .register{
    width:100%;

    .top{
      width:100%;
      display: flex;
      justify-content: space-between;
      margin-bottom:1em;

      .item{
        width:49%;

        h5{
          font-size:1.2em;
          margin-bottom:.2em;
          color: #797979;
          

          sup{
            color:red;
            font-size:100%;
            top:0;
          }
        }

        input{
          width:100%;
          height:2em;
          line-height:2em;
          font-size:1.2em;
        }
      }
    }

    .bottom{
      width:100%;
      margin-bottom:1em;

      h5{
        font-size:1.2em;
        margin-bottom:.2em;
        color: #797979;

        sup{
          color:red;
          font-size:100%;
          top:0;
        }
      }

      textarea{
        display: block;
        width:100%;
        height:14em;
        font-size:1.2em;
      }
    }

    .send{
      width:100%;
      text-align: right;

      button{
        width:13em;
        height:3em;
        line-height:3em;
        color:#fff;
        text-transform: uppercase;
        text-align: center;
        font-family: OSBold;
        font-size:1.2em;
        background: #fcac45;
        border:0px;

        transition: all linear .3s;

        &:hover{
          transform: translateY(-10px);
          box-shadow: 0px 20px 10px 1px #d7d7d7;
        }
      }
    }
  }

  @media screen and (max-width:600px){
    &{
      padding:6em 0em 3em;

      .title{
        font-size:2em;
      }

      .desc{
        width:95%;
      }

      .register{
        .top{
          display: block;

          .item{
            width:100%;
            margin-bottom:1.5em;
          }
        }

        .send{
          text-align: center;

          button{
            width:16em;
          }
        }
      }
    }
  }
}

// 底部
.footer{  
  background:#111111;
  padding:2em 0em;
  color:#fff;

  .container{
    display: flex;
    justify-content: space-between;
    align-items: center;
    align-content: center;

    &::before,&::after{
      content: '';
      display: none;
    }

    .copyright{
      font-size:1.2em;
      font-family: OSLight;

      span{
        font-family: OSBold;
      }
    }

    .link{
      display: flex;

      .item{
        width:3em;
        height:3em;
        border:2px solid #737373;
        border-radius: 100px;
        overflow: hidden;
        cursor: pointer;
        transition: all linear .3s;
        margin-right:.5em;

        &:hover{
          transform: translateY(-10px);
          box-shadow: 0px 10px 10px 1px #797979;
        }

        img{
          width: 100%;
        }
      }
    }
  }

  @media screen and (max-width:700px){
    .container{
      display: block;

      .copyright, .link{
        width:100%;
        margin-bottom:1em;
      }

      .copyright{
        text-align: center;
      }

      .link{
        justify-content: space-around;
      }
    }
  }
}

//up
.up{
    width: 70px;
    height: 70px;
    position: fixed;
    bottom: 45px;
    right: 45px;
    a{
        width: 100%;
        height: 100%;  
    }
   
    a:hover {
        animation: up 1s;
    }
    @keyframes up {
        from {
          transform: scale3d(1, 1, 1);
        }
      
        30% {
          transform: scale3d(1.25, 0.75, 1);
        }
      
        40% {
          transform: scale3d(0.75, 1.25, 1);
        }
      
        50% {
          transform: scale3d(1.15, 0.85, 1);
        }
      
        65% {
          transform: scale3d(.95, 1.05, 1);
        }
      
        75% {
          transform: scale3d(1.05, .95, 1);
        }
      
        to {
          transform: scale3d(1, 1, 1);
        }
      }
}